package com.bsj.power.pls.service;

import com.bsj.power.common.config.global.JsonResult;
import com.bsj.power.common.def.dto.path.PathSearchDTO;
import com.bsj.power.common.def.vo.pls.FormsPathVO;
import com.bsj.power.common.def.vo.pls.PathReportCountVO;
import com.bsj.power.common.def.vo.pls.PathReportVO;

import java.util.List;

/**
 * @author LiJiaXin
 * @version 1.0.0
 * @description PathReportService
 * @time 2024/5/7 11:51
 */
public interface PathReportService {

    /**
     * 区域进出统计报表
     *
     * @param pathSearchDTO
     * @return com.bsj.power.common.config.global.JsonResult<java.util.List<com.bsj.power.common.def.vo.pls.PathReportCountVO>>
     * @author ljx
     * @time 2024/5/7 14:46
     */
    JsonResult<List<PathReportCountVO>> pagePathReportCount(PathSearchDTO pathSearchDTO);

    /**
     * 获取区域进出报表
     * @param pathSearchDTO
     * @return
     */
    JsonResult<List<PathReportCountVO>> pagePathReport(PathSearchDTO pathSearchDTO);

    /**
     * 区域进出报表
     * @param startTime 开始时间
     * @param endTime 结束时间
     * @return
     */
    JsonResult<List<FormsPathVO>> formsReport(String startTime, String endTime);

    /**
     * 区域进出详情
     *
     * @param pathSearchDTO
     * @return com.bsj.power.common.config.global.JsonResult<java.util.List<com.bsj.power.common.def.vo.pls.PathReportVO>>
     * @author ljx
     * @time 2024/5/7 19:21
     */
    JsonResult<List<PathReportVO>> pathReportDetail(PathSearchDTO pathSearchDTO);
}
